1. Technical Field
The present invention is related to a method and system to be utilized in data communications. In particular, the present invention is related to a method and system to be utilized in data communications involving at least one data communications network. Yet still more particularly, the present invention is related to a method and system, to be utilized in data communications involving at least one data communication network wherein at least one emulated data communication network resides, and which significantly reduces the possibility of loss of network efficiency arising from monopolization of the at least one data communications network by one or more stations utilizing the at least one emulated network.
2. Description of the Related Art
Data communications is the transfer of data from one or more sources to one or more sinks that is accomplished (a) via one or more data links between the one or more sources and one or more sinks and (b) according to a protocol. Weik, Communications Standard Dictionary 203 (3rd ed. 1996). A data link is the means of connecting facilities or equipment at one location to facilities or equipment at another location for the purpose of transmitting and receiving data. Weik, Communications Standard Dictionary 206 (3rd ed. 1996). A protocol, in communications, computer, data processing, and control systems, is a set of formal conventions that govern the format and control the interactions between two communicating functional elements in order to achieve efficient and understandable communications. Weik, Communications Standard Dictionary 770 (3rd ed. 1996).
A data communications network is the interconnection of three or more communicating entities (i.e., data sources and/or sinks) over one or more data links. Weik, Communications Standard Dictionary 618 (3rd ed. 1996).
Data communications networks connect and allow communications between multiple data sources and sinks over one or more data links. The concept of a data link includes the media connecting one or more data sources to one or more data sinks, as well as the data communications equipment utilizing the media. The Data communications networks utilize protocols to control the interactions between data sources and sinks communicating over the one or more data links. Thus, it follows that such protocols must take into account the data communications requirements of data sources and links desiring communication over the one or more data links, and the nature of the underlying one or more data links themselves, in order to ensure that the requirements of such data sources and sinks are met.
Since protocols are interrelated to both the technology of the underlying data links and the data source and sink communications requirements, data communications protocols tend to evolve over time, as both data link technology and data transmission requirements change. A good example of such evolution is the relatively recent emergence of the Asynchronous Transfer Mode (ATM) protocol in order to satisfy data communications network user requirements by the use of fast digital communications equipment.
Today's data communications network users often have widely varying data communications transmission and reception requirements over time. For example, at one point in time a user may desire to transfer computer files over a network, while at another point in time the same user may want to engage in real-time voice communications over the same network, while at yet another point in time the same user may want to transmit and receive high-resolution full motion video over the same network.
These varying user needs have greatly varying requirements as far as the underlying data networks are concerned. For example, real-time traffic such as voice and high resolution video can tolerate some loss but not delay, while non-real-time traffic such as computer data and file transfer may tolerate some delay but not loss. Furthermore, exactly when different types of traffic will occur is not known in advance, but tends to occur at random intervals. In other words, the data comes in bursts and must be transmitted at the peak rate of the burst (which may be quite high as in full motion video), but the average arrival time between bursts may be quite large and randomly distributed.
Asynchronous Transfer Mode (ATM) protocol has evolved in order to satisfy the foregoing and similar data communications requirements by use of emerging digital communications equipment. ATM is a communications protocol that (a) enables the transmission of voice, data, image, and video signals over wide area, high bandwidth communications systems; (b) provides fast packet switching in which information is inserted into small fixed size cells that are multiplexed and switched in a slotted operation, based upon header content, over a virtual circuit established immediately upon request for service; (c) has been chosen as the switching standard for broadband integrated services digital networks (BISDNs); (d) has variable transmission rates; (e) offers bandwidth on demand service, and (f) supports multiple concurrent connections over single communications lines. Weik, Communications Standard Dictionary 47 (3rd ed. 1996).
ATM is a type of fast packet switching protocol. A packet, in data communications, is a sequence of binary digits that has one or more of the following characteristics: (a) includes data, control signals, and possibly error control signals, (b) is transmitted and switched as a composite whole, (c) is arranged in a specific format, such as a header part and a data part, (d) may consist of several messages or may be part of a single message, (e) is used in asynchronous switched systems, and (f) is usually dedicated to one user for a session. Weik, Communications Standard Dictionary 690 (3rd ed. 1996). A fast packet switching protocol increases the speed of packet switching by eliminating overhead (i.e., information in a packet which is solely utilized for efficient and correct communications and has no information content of interest to the ultimate network user). Weik, Communications Standard Dictionary 690 (3rd ed. 1996). Thus, in ATM user data is divided into "chunks" (i.e., is "packetized") and then control information is added to those chunks to make sure that they arrive at the appropriate destination.
In an ATM protocol network fast packet switching protocol overhead is reduced by (1) allocating flow control (making sure that a network node's buffer capacity is not exceeded) and error control (making sure that information is not corrupted) to nodes within the network, and (2) providing different Quality of Service (with lower Quality of Services requiring less overhead) dependent upon requirements received from ATM protocol network users.
The ability of ATM to provide different Quality of Service is one of the greatest advantages of ATM. These different qualities of service allow data communications networks to carry, in an integrated way, both real-time traffic such as voice and high resolution video which can tolerate some loss but not delay, as well as non-real-time traffic such as computer data and file transfer which may tolerate some delay but not loss. Thus, ATM gives networks the ability to efficiently handle the widely variant network user data requirements referenced above.
ATM provides the mechanisms whereby widely varying user data demands may be satisfied without unduly consuming network communications resources. That is, ATM tends to maximize efficiency of the data communication network wherein it is used. Hence, there is tremendous pressure from the communications industry to move toward ATM protocol networks.
Unfortunately for the communications industry, there exists today a tremendous installed base of non-ATM protocol networks (e.g., Wide Area Networks (WANs), Local Area Networks (LANs), Internet Protocol Networks) which do not utilize ATM protocol. Furthermore, some of the non-ATM protocol networks have features, which ATM protocol networks do not provide but that user systems have come to rely upon and have been designed to utilize. Thus, while the communications industry desires to move toward ATM protocol networks for reasons mentioned previously, a large percentage of the industry's customer base has opposed such movement in that such customer base has previously invested in hardware and software designed for non-ATM protocol networks. Thus, a major problem faced by the industry is how to move toward ATM protocol networks without disturbing its existing installed customer base.
The communications industry has opted for an attrition strategy to solve this problem. Under this strategy, the industry has opted to move toward ATM protocol networks while simultaneously continuing to support the vast installed base of non-ATM protocol networks, and the network and link layer protocols operating on these networks. (The hope being that as new users come on line, they will utilize ATM protocol equipment and that as older systems are phased out, they will be replaced with ATM protocol systems.) The key to this strategy is empowering the ATM protocol networks to be able to support non-ATM protocols, and to be able to supply non-ATM features which users have come to expect and rely upon.
The communications industry has opted to provide such support and supply such features via various "overlay" schemes. While the specifics of any particular overlay implementation are complex, the general idea is relatively straightforward: any non-ATM capability will be provided by a (logically) separate protocol that is (logically) overlaid onto a base ATM protocol network. The (logically) overlaid protocol is then utilized to allow non-ATM protocol networks to interact with ATM protocol networks "as if" the ATM protocol networks, and entities within such ATM protocol networks, recognize the protocols and support the features of non-ATM protocol networks.
One of the more well-known overlay schemes involves emulating the function of one network protocol scheme within the ATM network itself. An example of such is Local Area Network Emulation.
Local Area Network (LAN) Emulating protocol overlay schemes are often utilized to create one or more emulated local area networks within one or more ATM protocol networks. Each emulated network is a logical construct which is maintained by a LAN Emulation Server (the specifics of LAN Emulation Servers will be described below in the detailed description). However, from the standpoint of computing systems utilizing emulated local area networks, such emulation is completely transparent. That is, such emulation allows the use of "off the shelf" applications designed to function with local area network hardware and software, and functions "as if" the emulated network were in fact a true, physical, local area network.
While the emulation is transparent from the standpoint of the user of the emulation, such is certainly not the case within the ATM protocol network itself. In many instances, a function that is easily accomplished within a physical LAN requires a tremendous amount of data processing and data communication within an ATM protocol network to emulate that function.
One example where such is true is that of LAN broadcast, wherein one station on the LAN transmits a message intended to be received by either all or a subset of multiple stations on the LAN. One example where such a broadcast function is possible is where a bus topology is being utilized on a particular physical LAN (e.g., a number of data sources and sinks connected to one physical path, such as twisted pair wire or co-axial cable). Thus, when a station on the bus LAN transmits over the medium, all stations on the LAN can "hear" it since all data sources and sinks are connected to the same physical path and thus a transmission from one reaches all virtually simultaneously.
As has been discussed, ATM protocol networks are packet switched networks. That is, when one ATM source or sink transmits over a data link, it's transmission is not correspondingly "heard" or received by all stations on the ATM protocol network. Consequently, when an ATM protocol network provides emulation of the broadcast function, the ATM protocol network must produce multiple redundant packets addressed to the stations on the emulated LAN and deliver these packets in such a fashion that it appears to the stations utilizing the emulated LAN that a broadcast over physical LAN has occurred.
Such emulation thus can prove exceedingly intensive both from a data processing and data communications bandwidth consumption standpoint. Also, due to the fact that such emulation is exceedingly processing and communications intensive, it is very possible that one or more stations could greatly decrease the efficiency of the ATM protocol network providing the emulation if such stations over utilized the broadcast emulation and thereby monopolized network resources.
Thus, it is apparent from the foregoing, that a need exists for a method and system which retain the flexibility and power of the foregoing noted network emulation overlay schemes, and yet significantly reduce the possibility of loss of network efficiency arising from monopolization of the one or more underlying base networks by one or more stations utilizing the network emulation.